#pragma once

#include "cocos2d.h"

class SceneCamera : public cocos2d::Ref
{
public:
    virtual ~SceneCamera() {};

    void lookAt(const cocos2d::Point& position);
    void setViewSize(const cocos2d::Size &size) { _viewSize = size; }
    void setViewableRange(const cocos2d::Rect& range) { _viewableRange = range; }
    void run(long tick) {}
    
    const cocos2d::Point& getPosition() { return _position; }
    const cocos2d::Rect& getViewableRange() { return _viewableRange; }

protected:
    void convertPosition(cocos2d::Point& position);

protected:
    cocos2d::Point _position;
    cocos2d::Size _viewSize;
    cocos2d::Rect _viewableRange;
};